/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package LogicaNegocio.Biblioteca;

import LogicaNegocio.Empleados.Bibliotecario;
import java.util.Date;

/**
 * Esta clase en java define las caracteristicas y atributos de
 * un prestamo en la biblioteca.
 *
 * @author sebaxtian
 * Archivo: Prestamo.java
 * @version 1.0
 * Fecha: dom abr 11 01:07:54 COT 2010
 */


public class Prestamo {

    //Atributos de clase
    private int idPrestamo;
    private int cedulaBibliotecario;
    private int idOrden;
    private Date fechaEntrega;
    private boolean devuelto;
    private Bibliotecario bibliotecario;
    private Orden orden;

    /**
     * Crea un prestamo con atributos nulos.
     */
    public Prestamo() {
        this.idPrestamo = -1;
        this.cedulaBibliotecario = -1;
        this.idOrden = -1;
        this.fechaEntrega = null;
        this.devuelto = false;
        this.bibliotecario = null;
        this.orden = null;
    }

    /**
     * Crea un prestamo con atributos definidos como argumentos.
     *
     * @param idPrestamo
     * @param cedulaBibliotecario
     * @param idOrden
     * @param fechaEntrega
     * @param devuelto
     */
    public Prestamo(int idPrestamo, int cedulaBibliotecario, int idOrden, Date fechaEntrega, boolean devuelto) {
        this.idPrestamo = idPrestamo;
        this.cedulaBibliotecario = cedulaBibliotecario;
        this.idOrden = idOrden;
        this.fechaEntrega = fechaEntrega;
        this.devuelto = devuelto;
        this.bibliotecario = null;
        this.orden = null;
    }

    /**
     * Obtiene el identificador del prestamo.
     *
     * @return idPrestamo
     */
    public int getIdPrestamo() {
        return idPrestamo;
    }

    /**
     * Cambia el identificador del prestamo.
     *
     * @param idPrestamo
     */
    public void setIdPrestamo(int idPrestamo) {
        this.idPrestamo = idPrestamo;
    }

    /**
     * Obtiene el numero de cedula del bibliotecario.
     *
     * @return cedulaBibliotecario
     */
    public int getCedulaBibliotecario() {
        return cedulaBibliotecario;
    }

    /**
     * Cambia el numero de cedula del bibliotecario.
     *
     * @param cedulaBibliotecario
     */
    public void setCedulaBibliotecario(int cedulaBibliotecario) {
        this.cedulaBibliotecario = cedulaBibliotecario;
    }

    /**
     * Obtiene el id de la orden.
     *
     * @return idOrden
     */
    public int getIdOrden() {
        return idOrden;
    }

    /**
     * Cambia el id de la orden.
     * 
     * @param idOrden
     */
    public void setIdOrden(int idOrden) {
        this.idOrden = idOrden;
    }

    /**
     * Obtiene la fecha de entrega del ejemplar solicitado en la orden de prestamo.
     *
     * @return fechaEntrega
     */
    public Date getFechaEntrega() {
        return fechaEntrega;
    }

    /**
     * Cambia la fecha de entrega del ejemplar solicitado en la orden de prestamo.
     *
     * @param fechaEntrega
     */
    public void setFechaEntrega(Date fechaEntrega) {
        this.fechaEntrega = fechaEntrega;
    }

    /**
     * Obtiene el estado de devolucion de un prestamo.
     *
     * @return devuelto
     */
    public boolean getDevuelto() {
        return devuelto;
    }

    /**
     * Cambia el estado de devolucion de un prestamo.
     * 
     * @param devuelto
     */
    public void setDevuelto(boolean devuelto) {
        this.devuelto = devuelto;
    }

    /**
     * Obtiene el bibliotecario que aprueba el prestamo.
     *
     * @return bibliotecario
     */
    public Bibliotecario getBibliotecario() {
        return bibliotecario;
    }

    /**
     * Cambia el bibliotecario que aprueba el prestamo.
     *
     * @param bibliotecario
     */
    public void setBibliotecario(Bibliotecario bibliotecario) {
        this.bibliotecario = bibliotecario;
    }

    /**
     * Obtiene la orden de prestamo generada por el usuario.
     *
     * @return orden
     */
    public Orden getOrden() {
        return orden;
    }

    /**
     * Cambia la orden de prestamo generada por el usuario.
     *
     * @param orden
     */
    public void setOrden(Orden orden) {
        this.orden = orden;
    }
}
